Typically, the most straight forward approach to secure a communication link is through the use of traditional encryption algorithms which are roughly categorized as symmetric and asymmetric.
In symmetric encryption, both communication devices use a common secret key pre-shared prior to deployment and accompanying encryption and decryption algorithms. Two widely used symmetric encryption methods are the Data Encryption Standard (DES) and the Advanced Encryption Standard (AES).
In asymmetric encryption, a private and public key pair is used. The public key is made available to the world so that any source can encrypt data, but the private key is known only to the receiver so that no other can perform decryption. A widely used asymmetric encryption algorithm is Rivest Shamir Adleman (RSA).
Other encryption methods, such as DES, AES and RSA, also all provide secure communication provided a large enough key. However, these algorithms were originally developed for computer networks and the cost associated with their implementation is high in terms of memory space, computation power and energy consumption. These costs make their implementation problematic in resource-constrained devices.
A possible alternative to a practically unbreakable AES with 128 bits is to use an algorithm with less complexity and a smaller key size—DES with 56 bits for example or a stream cipher. Periodic key refreshment may be used to compensate for the smaller key. Many methods for securely refreshing a key rely on the Diffie-Hellman algorithm which demands considerable resources as well.